VPC フローログで 外部から NAT ゲートウェイへの通信が ACCEPT になっている理由を教えてください
困っていた内容
VPC フローログを確認したところ、インターネットから NAT ゲートウェイに対する通信で大量のACCEPT
が記録されていました。NAT ゲートウェイは外部から通信できない仕様と認識していたのですが、なぜ許可(ACCEPT
)が記録されるのでしょうか?設定次第なのでしょうか?
2 123456789012 eni-1234567890abcd 203.0.113.100 10.0.10.10 25614 443 6 1 40 1635749118 1635749154 ACCEPT OK
どう対応すればいいの?
ネットワーク ACL のインバウンドルールをご確認ください。
VPC フローログのaction
フィールド(ACCEPT
/REJECT
)は、セキュリティグループおよびネットワーク ACL による許可および拒否を表します。そのため、ネットワーク ACL のインバウンドルールで、インターネットからの通信が許可になっている場合、実際のトラフィックは受け入れませんが、VPC フローログにはACCEPT
が記録されます。
なお、NAT ゲートウェイはセキュリティグループを関連付けることはできず、ポート転送のような外部からのリクエストを許可する設定には対応していません。
実際に確認してみた
まず、ネットワーク ACL のインバウンドルールを確認します。
NAT ゲートウェイの「詳細」タブからサブネットをクリック。
「ネットワーク ACL」タブのインバウンドルールからすべての通信がAllow
になっていることを確認します。
hpingコマンドを使用し、NAT ゲートウェイのパブリックIPアドレス(Elastic IP アドレス)にリクエストを送信し、ドロップされたことを確認します。
# hping3 -c 1 -S <パブリックIPアドレス> HPING <パブリックIPアドレス> (en0 <パブリックIPアドレス>): S set, 40 headers + 0 data bytes --- <パブリックIPアドレス> hping statistic --- 1 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms
VPC フローログにはACCEPT
が記録されました。
2 123456789012 eni-1234567890abcd 203.0.113.100 10.0.10.10 25614 443 6 1 40 1635749118 1635749154 ACCEPT OK